package com.navi.loaddata.core.oracleEntity.fileMapping;

import javax.persistence.*;
import java.util.Date;

/**
 * Created by ghost on 2018/5/8.
 */
@Entity
@Table(name = "ETL_CELL_ARRAY_CF_MAPPING_V", schema = "EDALDR", catalog = "")
public class EtlCellArrayCfMappingV {
    private String arrayComponentId;
    private String cfComponentId;
    private Date startTime;
    private String componentType;
    private String arrayGlassId;
    private String cfGlassId;
    private String arrayLotId;
    private String cfGroupId;
    private String cellGroupId;
    private String cellGroupIdAfterAsm;

    @Id
    @Column(name = "ARRAY_COMPONENT_ID")
    public String getArrayComponentId() {
        return arrayComponentId;
    }

    public void setArrayComponentId(String arrayComponentId) {
        this.arrayComponentId = arrayComponentId;
    }

    @Basic
    @Column(name = "CF_COMPONENT_ID")
    public String getCfComponentId() {
        return cfComponentId;
    }

    public void setCfComponentId(String cfComponentId) {
        this.cfComponentId = cfComponentId;
    }

    @Basic
    @Column(name = "START_TIME")
    @Temporal(TemporalType.TIMESTAMP)
    public Date getStartTime() {
        return startTime;
    }

    public void setStartTime(Date startTime) {
        this.startTime = startTime;
    }

    @Basic
    @Column(name = "COMPONENT_TYPE")
    public String getComponentType() {
        return componentType;
    }

    public void setComponentType(String componentType) {
        this.componentType = componentType;
    }

    @Basic
    @Column(name = "ARRAY_GLASS_ID")
    public String getArrayGlassId() {
        return arrayGlassId;
    }

    public void setArrayGlassId(String arrayGlassId) {
        this.arrayGlassId = arrayGlassId;
    }

    @Basic
    @Column(name = "CF_GLASS_ID")
    public String getCfGlassId() {
        return cfGlassId;
    }

    public void setCfGlassId(String cfGlassId) {
        this.cfGlassId = cfGlassId;
    }

    @Basic
    @Column(name = "ARRAY_LOT_ID")
    public String getArrayLotId() {
        return arrayLotId;
    }

    public void setArrayLotId(String arrayLotId) {
        this.arrayLotId = arrayLotId;
    }

    @Basic
    @Column(name = "CF_GROUP_ID")
    public String getCfGroupId() {
        return cfGroupId;
    }

    public void setCfGroupId(String cfGroupId) {
        this.cfGroupId = cfGroupId;
    }

    @Basic
    @Column(name = "CELL_GROUP_ID")
    public String getCellGroupId() {
        return cellGroupId;
    }

    public void setCellGroupId(String cellGroupId) {
        this.cellGroupId = cellGroupId;
    }

    @Basic
    @Column(name = "CELL_GROUP_ID_AFTER_ASM")
    public String getCellGroupIdAfterAsm() {
        return cellGroupIdAfterAsm;
    }

    public void setCellGroupIdAfterAsm(String cellGroupIdAfterAsm) {
        this.cellGroupIdAfterAsm = cellGroupIdAfterAsm;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;

        EtlCellArrayCfMappingV that = (EtlCellArrayCfMappingV) o;

        if (arrayComponentId != null ? !arrayComponentId.equals(that.arrayComponentId) : that.arrayComponentId != null)
            return false;
        if (cfComponentId != null ? !cfComponentId.equals(that.cfComponentId) : that.cfComponentId != null)
            return false;
        if (startTime != null ? !startTime.equals(that.startTime) : that.startTime != null) return false;
        if (componentType != null ? !componentType.equals(that.componentType) : that.componentType != null)
            return false;
        if (arrayGlassId != null ? !arrayGlassId.equals(that.arrayGlassId) : that.arrayGlassId != null) return false;
        if (cfGlassId != null ? !cfGlassId.equals(that.cfGlassId) : that.cfGlassId != null) return false;
        if (arrayLotId != null ? !arrayLotId.equals(that.arrayLotId) : that.arrayLotId != null) return false;
        if (cfGroupId != null ? !cfGroupId.equals(that.cfGroupId) : that.cfGroupId != null) return false;
        if (cellGroupId != null ? !cellGroupId.equals(that.cellGroupId) : that.cellGroupId != null) return false;
        if (cellGroupIdAfterAsm != null ? !cellGroupIdAfterAsm.equals(that.cellGroupIdAfterAsm) : that.cellGroupIdAfterAsm != null)
            return false;

        return true;
    }

    @Override
    public int hashCode() {
        int result = arrayComponentId != null ? arrayComponentId.hashCode() : 0;
        result = 31 * result + (cfComponentId != null ? cfComponentId.hashCode() : 0);
        result = 31 * result + (startTime != null ? startTime.hashCode() : 0);
        result = 31 * result + (componentType != null ? componentType.hashCode() : 0);
        result = 31 * result + (arrayGlassId != null ? arrayGlassId.hashCode() : 0);
        result = 31 * result + (cfGlassId != null ? cfGlassId.hashCode() : 0);
        result = 31 * result + (arrayLotId != null ? arrayLotId.hashCode() : 0);
        result = 31 * result + (cfGroupId != null ? cfGroupId.hashCode() : 0);
        result = 31 * result + (cellGroupId != null ? cellGroupId.hashCode() : 0);
        result = 31 * result + (cellGroupIdAfterAsm != null ? cellGroupIdAfterAsm.hashCode() : 0);
        return result;
    }
}
